Cteni pole bytu z ActiveX componenty
Otázka od: j.binder@albacon.cz
13. 8. 2004 22:18
Ahoj,
uz jsem se sice jednou neuspesne ptal, ale protoze s problemem nemuzu hnout,
tak to zkusim jeste jednou.
Mam ActiveX komponentu, ktera mi vraci pole bytu. V importovanem rozhrani je v
prislusna metoda deklarovana jako XXX(var ReceivedData: OleVariant)
Zkousel jsem zhruba toto
var v: OleVariant;
v := VarArrayCreate([0,76], varByte), resp.
v := VarArrayRef( VarArrayCreate([0,76], varByte))
....
XXX(v)
Zcela zjevne vsak metoda dostane neco jineho nez ceka, protoze misto dat se mi
vraci chyby jako Acces violation, external exception, privilegid instruction,
safe array locked ....
V chodicim prikladu HTML/VBScriptu je toto volani
dim ReceiveData(76)
ActiveXCtrl.XXX(ReceiveData(0))
v dokumentaci je uvedena hlavicka
XXX(VARIANT* ReceiveData)
Uz na tom visim dlouho a nevim co s tim. Chyba asi bude u mne, ale nemuze byt
tez nejaka nekompatibilita mezi COM objekty vytvorenymi ve VC++ a kodem
generovanym Delphi? Za kazdou pomoc predem moc dekuji.
Zdravi Jiri Binder